
<!DOCTYPE HTML>
<html lang="" >
    <head>
        <meta charset="UTF-8">
        <meta content="text/html; charset=utf-8" http-equiv="Content-Type">
        <title>A. RDBMS Tuning · GitBook</title>
        <meta http-equiv="X-UA-Compatible" content="IE=edge" />
        <meta name="description" content="">
        <meta name="generator" content="GitBook 3.2.3">
        
        
        
    
    <link rel="stylesheet" href="../gitbook/style.css">

    
            
                
                <link rel="stylesheet" href="../gitbook/gitbook-plugin-highlight/website.css">
                
            
                
                <link rel="stylesheet" href="../gitbook/gitbook-plugin-search/search.css">
                
            
                
                <link rel="stylesheet" href="../gitbook/gitbook-plugin-fontsettings/website.css">
                
            
        

    

    
        
        <link rel="stylesheet" href="../styles/website.css">
        
    
        
    
        
    
        
    
        
    
        
    

        
    
    
    <meta name="HandheldFriendly" content="true"/>
    <meta name="viewport" content="width=device-width, initial-scale=1, user-scalable=no">
    <meta name="apple-mobile-web-app-capable" content="yes">
    <meta name="apple-mobile-web-app-status-bar-style" content="black">
    <link rel="apple-touch-icon-precomposed" sizes="152x152" href="../gitbook/images/apple-touch-icon-precomposed-152.png">
    <link rel="shortcut icon" href="../gitbook/images/favicon.ico" type="image/x-icon">

    
    <link rel="next" href="message-handler-tuning/" />
    
    
    <link rel="prev" href="../extensions/tracing.html" />
    

    </head>
    <body>
        
<div class="book">
    <div class="book-summary">
        
            
<div id="book-search-input" role="search">
    <input type="text" placeholder="Type to search" />
</div>

            
                <nav role="navigation">
                


<ul class="summary">
    
    

    

    
        
        
    
        <li class="chapter " data-level="1.1" data-path="../">
            
                <a href="../">
            
                    
                    Introduction
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.2" data-path="../architecture-overview/">
            
                <a href="../architecture-overview/">
            
                    
                    Architecture Overview
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.2.1" data-path="../architecture-overview/ddd-cqrs-concepts.html">
            
                <a href="../architecture-overview/ddd-cqrs-concepts.html">
            
                    
                    DDD & CQRS Concepts
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.2.2" data-path="../architecture-overview/event-sourcing.html">
            
                <a href="../architecture-overview/event-sourcing.html">
            
                    
                    Event Sourcing
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.2.3" data-path="../architecture-overview/event-driven-microservices.html">
            
                <a href="../architecture-overview/event-driven-microservices.html">
            
                    
                    Event-Driven Microservices
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="1.3" data-path="../axon-server-introduction.html">
            
                <a href="../axon-server-introduction.html">
            
                    
                    Axon Server
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.4" data-path="../release-notes/">
            
                <a href="../release-notes/">
            
                    
                    Release Notes
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.4.1" data-path="../release-notes/rn-axon-framework/">
            
                <a href="../release-notes/rn-axon-framework/">
            
                    
                    Axon Framework
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.4.1.1" data-path="../release-notes/rn-axon-framework/rn-af-major-releases.html">
            
                <a href="../release-notes/rn-axon-framework/rn-af-major-releases.html">
            
                    
                    Major Releases
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.4.1.2" data-path="../release-notes/rn-axon-framework/rn-af-minor-releases.html">
            
                <a href="../release-notes/rn-axon-framework/rn-af-minor-releases.html">
            
                    
                    Minor Releases
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="1.4.2" data-path="../release-notes/rn-axon-server/">
            
                <a href="../release-notes/rn-axon-server/">
            
                    
                    Axon Server
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="1.4.2.1" data-path="../release-notes/rn-axon-server/rn-as-major-releases.html">
            
                <a href="../release-notes/rn-axon-server/rn-as-major-releases.html">
            
                    
                    Major Releases
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.4.2.2" data-path="../release-notes/rn-axon-server/rn-asse-minor-releases.html">
            
                <a href="../release-notes/rn-axon-server/rn-asse-minor-releases.html">
            
                    
                    Minor Releases Standard Edition
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="1.4.2.3" data-path="../release-notes/rn-axon-server/rn-as-minor-releases.html">
            
                <a href="../release-notes/rn-axon-server/rn-as-minor-releases.html">
            
                    
                    Minor Releases Enterprise Edition
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="1.4.3" data-path="../release-notes/axon-framework-extensions.html">
            
                <a href="../release-notes/axon-framework-extensions.html">
            
                    
                    Axon Framework Extensions
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    

    
        
        <li class="header">Getting Started</li>
        
        
    
        <li class="chapter " data-level="2.1" data-path="../getting-started/quick-start.html">
            
                <a href="../getting-started/quick-start.html">
            
                    
                    Quick Start
            
                </a>
            

            
        </li>
    

    
        
        <li class="header">Axon Framework</li>
        
        
    
        <li class="chapter " data-level="3.1" data-path="../axon-framework/introduction.html">
            
                <a href="../axon-framework/introduction.html">
            
                    
                    Introduction
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.2" data-path="../axon-framework/messaging-concepts/">
            
                <a href="../axon-framework/messaging-concepts/">
            
                    
                    Messaging Concepts
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="3.2.1" data-path="../axon-framework/messaging-concepts/anatomy-message.html">
            
                <a href="../axon-framework/messaging-concepts/anatomy-message.html">
            
                    
                    Anatomy of a Message
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.2.2" data-path="../axon-framework/messaging-concepts/message-correlation.html">
            
                <a href="../axon-framework/messaging-concepts/message-correlation.html">
            
                    
                    Message Correlation
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.2.3" data-path="../axon-framework/messaging-concepts/message-intercepting.html">
            
                <a href="../axon-framework/messaging-concepts/message-intercepting.html">
            
                    
                    Message Intercepting
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.2.4" data-path="../axon-framework/messaging-concepts/supported-parameters-annotated-handlers.html">
            
                <a href="../axon-framework/messaging-concepts/supported-parameters-annotated-handlers.html">
            
                    
                    Supported Parameters for Annotated Handlers
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.2.5" data-path="../axon-framework/messaging-concepts/exception-handling.html">
            
                <a href="../axon-framework/messaging-concepts/exception-handling.html">
            
                    
                    Exception Handling
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.2.6" data-path="../axon-framework/messaging-concepts/unit-of-work.html">
            
                <a href="../axon-framework/messaging-concepts/unit-of-work.html">
            
                    
                    Unit of Work
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="3.3" data-path="../axon-framework/axon-framework-commands/">
            
                <a href="../axon-framework/axon-framework-commands/">
            
                    
                    Commands
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="3.3.1" data-path="../axon-framework/axon-framework-commands/modeling/">
            
                <a href="../axon-framework/axon-framework-commands/modeling/">
            
                    
                    Modeling
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="3.3.1.1" data-path="../axon-framework/axon-framework-commands/modeling/aggregate.html">
            
                <a href="../axon-framework/axon-framework-commands/modeling/aggregate.html">
            
                    
                    Aggregate
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.3.1.2" data-path="../axon-framework/axon-framework-commands/modeling/multi-entity-aggregates.html">
            
                <a href="../axon-framework/axon-framework-commands/modeling/multi-entity-aggregates.html">
            
                    
                    Multi-Entity Aggregates
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.3.1.3" data-path="../axon-framework/axon-framework-commands/modeling/state-stored-aggregates.html">
            
                <a href="../axon-framework/axon-framework-commands/modeling/state-stored-aggregates.html">
            
                    
                    State Stored Aggregates
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.3.1.4" data-path="../axon-framework/axon-framework-commands/modeling/aggregate-creation-from-another-aggregate.html">
            
                <a href="../axon-framework/axon-framework-commands/modeling/aggregate-creation-from-another-aggregate.html">
            
                    
                    Aggregate Creation from another Aggregate
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.3.1.5" data-path="../axon-framework/axon-framework-commands/modeling/aggregate-polymorphism.html">
            
                <a href="../axon-framework/axon-framework-commands/modeling/aggregate-polymorphism.html">
            
                    
                    Aggregate Polymorphism
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.3.1.6" data-path="../axon-framework/axon-framework-commands/modeling/conflict-resolution.html">
            
                <a href="../axon-framework/axon-framework-commands/modeling/conflict-resolution.html">
            
                    
                    Conflict Resolution
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="3.3.2" data-path="../axon-framework/axon-framework-commands/command-dispatchers.html">
            
                <a href="../axon-framework/axon-framework-commands/command-dispatchers.html">
            
                    
                    Command Dispatchers
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.3.3" data-path="../axon-framework/axon-framework-commands/command-handlers.html">
            
                <a href="../axon-framework/axon-framework-commands/command-handlers.html">
            
                    
                    Command Handlers
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.3.4" data-path="../axon-framework/axon-framework-commands/infrastructure.html">
            
                <a href="../axon-framework/axon-framework-commands/infrastructure.html">
            
                    
                    Infrastructure
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.3.5" data-path="../axon-framework/axon-framework-commands/configuration.html">
            
                <a href="../axon-framework/axon-framework-commands/configuration.html">
            
                    
                    Configuration
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="3.4" data-path="../axon-framework/events/">
            
                <a href="../axon-framework/events/">
            
                    
                    Events
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="3.4.1" data-path="../axon-framework/events/event-dispatchers.html">
            
                <a href="../axon-framework/events/event-dispatchers.html">
            
                    
                    Event Dispatchers
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.4.2" data-path="../axon-framework/events/event-handlers.html">
            
                <a href="../axon-framework/events/event-handlers.html">
            
                    
                    Event Handlers
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.4.3" data-path="../axon-framework/events/event-processors/">
            
                <a href="../axon-framework/events/event-processors/">
            
                    
                    Event Processors
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="3.4.3.1" data-path="../axon-framework/events/event-processors/subscribing.html">
            
                <a href="../axon-framework/events/event-processors/subscribing.html">
            
                    
                    Subscribing Event Processors
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.4.3.2" data-path="../axon-framework/events/event-processors/streaming.html">
            
                <a href="../axon-framework/events/event-processors/streaming.html">
            
                    
                    Streaming Event Processors
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="3.4.4" data-path="../axon-framework/events/event-bus-and-event-store.html">
            
                <a href="../axon-framework/events/event-bus-and-event-store.html">
            
                    
                    Event Bus & Event Store
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.4.5" data-path="../axon-framework/events/event-versioning.html">
            
                <a href="../axon-framework/events/event-versioning.html">
            
                    
                    Event Versioning
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.4.6" data-path="../axon-framework/events/event-serialization.html">
            
                <a href="../axon-framework/events/event-serialization.html">
            
                    
                    Event Serialization
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="3.5" data-path="../axon-framework/queries/">
            
                <a href="../axon-framework/queries/">
            
                    
                    Queries
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="3.5.1" data-path="../axon-framework/queries/query-processing.html">
            
                <a href="../axon-framework/queries/query-processing.html">
            
                    
                    Query Processing
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.5.2" data-path="../axon-framework/queries/query-dispatchers.html">
            
                <a href="../axon-framework/queries/query-dispatchers.html">
            
                    
                    Query Dispatchers
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.5.3" data-path="../axon-framework/queries/query-handlers.html">
            
                <a href="../axon-framework/queries/query-handlers.html">
            
                    
                    Query Handlers
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.5.4" data-path="../axon-framework/queries/implementations.html">
            
                <a href="../axon-framework/queries/implementations.html">
            
                    
                    Implementations
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.5.5" data-path="../axon-framework/queries/configuration.html">
            
                <a href="../axon-framework/queries/configuration.html">
            
                    
                    Configuration
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="3.6" data-path="../axon-framework/sagas/">
            
                <a href="../axon-framework/sagas/">
            
                    
                    Sagas
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="3.6.1" data-path="../axon-framework/sagas/implementation.html">
            
                <a href="../axon-framework/sagas/implementation.html">
            
                    
                    Implementation
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.6.2" data-path="../axon-framework/sagas/associations.html">
            
                <a href="../axon-framework/sagas/associations.html">
            
                    
                    Associations
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.6.3" data-path="../axon-framework/sagas/infrastructure.html">
            
                <a href="../axon-framework/sagas/infrastructure.html">
            
                    
                    Infrastructure
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="3.7" data-path="../axon-framework/deadlines/">
            
                <a href="../axon-framework/deadlines/">
            
                    
                    Deadlines
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="3.7.1" data-path="../axon-framework/deadlines/deadline-managers.html">
            
                <a href="../axon-framework/deadlines/deadline-managers.html">
            
                    
                    Deadline Managers
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.7.2" data-path="../axon-framework/deadlines/event-schedulers.html">
            
                <a href="../axon-framework/deadlines/event-schedulers.html">
            
                    
                    Event Schedulers
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="3.8" data-path="../axon-framework/testing/">
            
                <a href="../axon-framework/testing/">
            
                    
                    Testing
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="3.8.1" data-path="../axon-framework/testing/commands-events.html">
            
                <a href="../axon-framework/testing/commands-events.html">
            
                    
                    Commands / Events
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.8.2" data-path="../axon-framework/testing/sagas-1.html">
            
                <a href="../axon-framework/testing/sagas-1.html">
            
                    
                    Sagas
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="3.9" data-path="../axon-framework/tuning/">
            
                <a href="../axon-framework/tuning/">
            
                    
                    Tuning
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="3.9.1" data-path="../axon-framework/tuning/event-snapshots.html">
            
                <a href="../axon-framework/tuning/event-snapshots.html">
            
                    
                    Event Snapshots
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.9.2" data-path="../axon-framework/tuning/event-processing.html">
            
                <a href="../axon-framework/tuning/event-processing.html">
            
                    
                    Event Processing
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.9.3" data-path="../axon-framework/tuning/command-processing.html">
            
                <a href="../axon-framework/tuning/command-processing.html">
            
                    
                    Command Processing
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="3.10" data-path="../axon-framework/monitoring-and-metrics.html">
            
                <a href="../axon-framework/monitoring-and-metrics.html">
            
                    
                    Monitoring and Metrics
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.11" data-path="../axon-framework/spring-boot-integration.html">
            
                <a href="../axon-framework/spring-boot-integration.html">
            
                    
                    Spring Boot Integration
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="3.12" data-path="../axon-framework/modules.html">
            
                <a href="../axon-framework/modules.html">
            
                    
                    Modules
            
                </a>
            

            
        </li>
    

    
        
        <li class="header">Axon Server</li>
        
        
    
        <li class="chapter " data-level="4.1" data-path="../axon-server/introduction.html">
            
                <a href="../axon-server/introduction.html">
            
                    
                    Introduction
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.2" data-path="../axon-server/installation/">
            
                <a href="../axon-server/installation/">
            
                    
                    Installation
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="4.2.1" data-path="../axon-server/installation/local-installation/">
            
                <a href="../axon-server/installation/local-installation/">
            
                    
                    Local Installation
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="4.2.1.1" data-path="../axon-server/installation/local-installation/axon-server-se.html">
            
                <a href="../axon-server/installation/local-installation/axon-server-se.html">
            
                    
                    Axon Server SE
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.2.1.2" data-path="../axon-server/installation/local-installation/axon-server-ee.html">
            
                <a href="../axon-server/installation/local-installation/axon-server-ee.html">
            
                    
                    Axon Server EE
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="4.2.2" data-path="../axon-server/installation/docker-k8s/">
            
                <a href="../axon-server/installation/docker-k8s/">
            
                    
                    Docker / K8s
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="4.2.2.1" data-path="../axon-server/installation/docker-k8s/axon-server-se.html">
            
                <a href="../axon-server/installation/docker-k8s/axon-server-se.html">
            
                    
                    Axon Server SE
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.2.2.2" data-path="../axon-server/installation/docker-k8s/axon-server-ee.html">
            
                <a href="../axon-server/installation/docker-k8s/axon-server-ee.html">
            
                    
                    Axon Server EE
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="4.3" data-path="../axon-server/administration/">
            
                <a href="../axon-server/administration/">
            
                    
                    Administration
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="4.3.1" data-path="../axon-server/administration/admin-configuration/">
            
                <a href="../axon-server/administration/admin-configuration/">
            
                    
                    Configuration
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="4.3.1.1" data-path="../axon-server/administration/admin-configuration/configuration.html">
            
                <a href="../axon-server/administration/admin-configuration/configuration.html">
            
                    
                    System Properties
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.3.1.2" data-path="../axon-server/administration/admin-configuration/command-line-interface.html">
            
                <a href="../axon-server/administration/admin-configuration/command-line-interface.html">
            
                    
                    Command Line Interface
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.3.1.3" data-path="../axon-server/administration/admin-configuration/rest-api.html">
            
                <a href="../axon-server/administration/admin-configuration/rest-api.html">
            
                    
                    REST API
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="4.3.2" data-path="../axon-server/administration/monitoring/">
            
                <a href="../axon-server/administration/monitoring/">
            
                    
                    Monitoring
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="4.3.2.1" data-path="../axon-server/administration/monitoring/actuator-endpoints.html">
            
                <a href="../axon-server/administration/monitoring/actuator-endpoints.html">
            
                    
                    Actuator Endpoints
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.3.2.2" data-path="../axon-server/administration/monitoring/grpc-metrics.html">
            
                <a href="../axon-server/administration/monitoring/grpc-metrics.html">
            
                    
                    gRPC Metrics
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.3.2.3" data-path="../axon-server/administration/monitoring/heartbeat-monitoring.html">
            
                <a href="../axon-server/administration/monitoring/heartbeat-monitoring.html">
            
                    
                    Heartbeat Monitoring
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="4.3.3" data-path="../axon-server/administration/clustering.html">
            
                <a href="../axon-server/administration/clustering.html">
            
                    
                    Clusters
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.3.4" data-path="../axon-server/administration/replication-groups.html">
            
                <a href="../axon-server/administration/replication-groups.html">
            
                    
                    Replication Groups
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.3.5" data-path="../axon-server/administration/multi-context.html">
            
                <a href="../axon-server/administration/multi-context.html">
            
                    
                    Multi-Context
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.3.6" data-path="../axon-server/administration/tagging.html">
            
                <a href="../axon-server/administration/tagging.html">
            
                    
                    Tagging
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.3.7" data-path="../axon-server/administration/backup-and-messaging-only-nodes.html">
            
                <a href="../axon-server/administration/backup-and-messaging-only-nodes.html">
            
                    
                    Backup and Messaging-only Nodes
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.3.8" data-path="../axon-server/administration/backups.html">
            
                <a href="../axon-server/administration/backups.html">
            
                    
                    Backups
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.3.9" data-path="../axon-server/administration/recovery.html">
            
                <a href="../axon-server/administration/recovery.html">
            
                    
                    Recovery
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.3.10" data-path="../axon-server/administration/plugins.html">
            
                <a href="../axon-server/administration/plugins.html">
            
                    
                    Plugins
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.3.11" data-path="../axon-server/administration/error-codes.html">
            
                <a href="../axon-server/administration/error-codes.html">
            
                    
                    Error Codes
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="4.4" data-path="../axon-server/security/">
            
                <a href="../axon-server/security/">
            
                    
                    Security
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="4.4.1" data-path="../axon-server/security/ssl.html">
            
                <a href="../axon-server/security/ssl.html">
            
                    
                    SSL
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.4.2" data-path="../axon-server/security/access-control.html">
            
                <a href="../axon-server/security/access-control.html">
            
                    
                    Access Control
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.4.3" data-path="../axon-server/security/access-control-se.html">
            
                <a href="../axon-server/security/access-control-se.html">
            
                    
                    Access Control - Standard Edition
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.4.4" data-path="../axon-server/security/access-control-ee.html">
            
                <a href="../axon-server/security/access-control-ee.html">
            
                    
                    Access Control - Enterprise Edition
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.4.5" data-path="../axon-server/security/access-control-clients.html">
            
                <a href="../axon-server/security/access-control-clients.html">
            
                    
                    Access Control - Client Applications
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.4.6" data-path="../axon-server/security/access-control-cli.html">
            
                <a href="../axon-server/security/access-control-cli.html">
            
                    
                    Access Control - CLI
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.4.7" data-path="../axon-server/security/access-control-api.html">
            
                <a href="../axon-server/security/access-control-api.html">
            
                    
                    Access Control - API
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.4.8" data-path="../axon-server/security/access-control-ldap.html">
            
                <a href="../axon-server/security/access-control-ldap.html">
            
                    
                    Access Control - LDAP
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.4.9" data-path="../axon-server/security/access-control-oauth2.html">
            
                <a href="../axon-server/security/access-control-oauth2.html">
            
                    
                    Access Control - OAuth 2.0
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="4.5" data-path="../axon-server/performance/">
            
                <a href="../axon-server/performance/">
            
                    
                    Performance
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="4.5.1" data-path="../axon-server/performance/tuning-event-processing.html">
            
                <a href="../axon-server/performance/tuning-event-processing.html">
            
                    
                    Event Segments
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.5.2" data-path="../axon-server/performance/flow-control.html">
            
                <a href="../axon-server/performance/flow-control.html">
            
                    
                    Flow Control
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="4.6" data-path="../axon-server/migration/">
            
                <a href="../axon-server/migration/">
            
                    
                    Migration
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="4.6.1" data-path="../axon-server/migration/standard-to-enterprise-edition.html">
            
                <a href="../axon-server/migration/standard-to-enterprise-edition.html">
            
                    
                    Standard to Enterprise Edition
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="4.6.2" data-path="../axon-server/migration/non-axon-server-to-axon-server.html">
            
                <a href="../axon-server/migration/non-axon-server-to-axon-server.html">
            
                    
                    Non-Axon Server to Axon Server
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    

    
        
        <li class="header">Extensions</li>
        
        
    
        <li class="chapter " data-level="5.1" data-path="../extensions/spring-amqp.html">
            
                <a href="../extensions/spring-amqp.html">
            
                    
                    Spring AMQP
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="5.2" data-path="../extensions/jgroups.html">
            
                <a href="../extensions/jgroups.html">
            
                    
                    JGroups
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="5.3" data-path="../extensions/kafka.html">
            
                <a href="../extensions/kafka.html">
            
                    
                    Kafka
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="5.4" data-path="../extensions/kotlin.html">
            
                <a href="../extensions/kotlin.html">
            
                    
                    Kotlin
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="5.5" data-path="../extensions/mongo.html">
            
                <a href="../extensions/mongo.html">
            
                    
                    Mongo
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="5.6" data-path="../extensions/reactor/reactor.html">
            
                <a href="../extensions/reactor/reactor.html">
            
                    
                    Reactor
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="5.6.1" data-path="../extensions/reactor/reactive-gateways/reactive-gateways.html">
            
                <a href="../extensions/reactor/reactive-gateways/reactive-gateways.html">
            
                    
                    Reactor Gateways
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="5.7" data-path="../extensions/spring-cloud.html">
            
                <a href="../extensions/spring-cloud.html">
            
                    
                    Spring Cloud
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="5.8" data-path="../extensions/tracing.html">
            
                <a href="../extensions/tracing.html">
            
                    
                    Tracing
            
                </a>
            

            
        </li>
    

    
        
        <li class="header">Appendices</li>
        
        
    
        <li class="chapter active" data-level="6.1" data-path="rdbms-tuning.html">
            
                <a href="rdbms-tuning.html">
            
                    
                    A. RDBMS Tuning
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="6.2" data-path="message-handler-tuning/">
            
                <a href="message-handler-tuning/">
            
                    
                    B. Message Handler Tuning
            
                </a>
            

            
            <ul class="articles">
                
    
        <li class="chapter " data-level="6.2.1" data-path="message-handler-tuning/parameter-resolvers.html">
            
                <a href="message-handler-tuning/parameter-resolvers.html">
            
                    
                    Parameter Resolvers
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="6.2.2" data-path="message-handler-tuning/handler-enhancers.html">
            
                <a href="message-handler-tuning/handler-enhancers.html">
            
                    
                    Handler Enhancers
            
                </a>
            

            
        </li>
    

            </ul>
            
        </li>
    
        <li class="chapter " data-level="6.3" data-path="meta-annotations.html">
            
                <a href="meta-annotations.html">
            
                    
                    C. Meta Annotations
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="6.4" data-path="identifier-generation.html">
            
                <a href="identifier-generation.html">
            
                    
                    D. Identifier Generation
            
                </a>
            

            
        </li>
    
        <li class="chapter " data-level="6.5" data-path="query-reference.html">
            
                <a href="query-reference.html">
            
                    
                    E. Axon Server Query Language
            
                </a>
            

            
        </li>
    

    

    <li class="divider"></li>

    <li>
        <a href="https://www.gitbook.com" target="blank" class="gitbook-link">
            Published with GitBook
        </a>
    </li>
</ul>


                </nav>
            
        
    </div>

    <div class="book-body">
        
            <div class="body-inner">
                
                    

<div class="book-header" role="navigation">
    

    <!-- Title -->
    <h1>
        <i class="fa fa-circle-o-notch fa-spin"></i>
        <a href=".." >A. RDBMS Tuning</a>
    </h1>
</div>




                    <div class="page-wrapper" tabindex="-1" role="main">
                        <div class="page-inner">
                            
<div id="book-search-results">
    <div class="search-noresults">
    
                                <section class="normal markdown-section">
                                
                                <h1 id="a-rdbms-tuning">A. RDBMS Tuning</h1>
<p>This chapter will cover several considerations in regards to tuning the database for events.</p>
<h2 id="sql-databases">SQL Databases</h2>
<p>If you have generated the tables automatically using your JPA implementation (e.g. Hibernate), you probably do not have all the right indexes set on your tables. Different usages of the event store require different indexes to be set for optimal performance. This list suggests the indexes that should be added for the different types of queries used by the default <code>EventStorageEngine</code> implementation:</p>
<ul>
<li><p>Normal operational use (storing and loading events):</p>
<p>Table <code>DomainEventEntry</code>, columns <code>aggregateIdentifier</code> and <code>sequenceNumber</code> (unique index)</p>
<p>Table <code>DomainEventEntry</code>, <code>eventIdentifier</code> (unique index)</p>
</li>
<li><p>Snapshotting:</p>
<p>Table <code>SnapshotEventEntry</code>, <code>aggregateIdentifier</code> column.</p>
<p>Table <code>SnapshotEventEntry</code>, <code>eventIdentifier</code> (unique index)</p>
</li>
<li><p>Sagas</p>
<p>Table <code>AssociationValueEntry</code>, columns <code>sagaType</code>, <code>associationKey</code> and <code>associationValue</code>,</p>
<p>Table <code>AssociationValueEntry</code>, columns <code>sagaId</code> and <code>sagaType</code>,</p>
</li>
</ul>
<p>The default column lengths generated by e.g. Hibernate may work, but won&apos;t be optimal. A UUID, for example, will always have the same length. Instead of a variable length column of 255 characters, you could use a fixed length column of 36 characters for the aggregate identifier.</p>
<p>The <code>timestamp</code> column in the <code>DomainEventEntry</code> table only stores ISO 8601 timestamps. If all times are stored in the UTC timezone, they need a column length of 24 characters. If you use another timezone, this may be up to 28. Using variable length columns is generally not necessary, since time stamps always have the same length.</p>
<blockquote>
<p><strong>Warning</strong></p>
<p>It is highly recommended to store all timestamps in UTC format. In countries with daylight saving time, storing timestamps in local time may result in sorting errors for events generated around and during the timezone switch. This does not occur when UTC is used. Some servers are configured to always use UTC. Alternatively, you should configure the event store to convert timestamps to UTC before storing them.</p>
</blockquote>
<p>The <code>type</code> column in the <code>DomainEventEntry</code> stores the type identifiers of aggregates. Generally, these are the <code>&apos;simple name&apos;</code> of the aggregate. Even the infamous <code>AbstractDependencyInjectionSpringContextTests</code> in Spring only counts 45 characters. Here, again, a shorter (but variable) length field should suffice.</p>
<h3 id="auto-increments-and-sequences">Auto-increments and sequences</h3>
<p>When using a relational database as an event store, Axon relies on an auto-increment value to allow tracking processors to read all events roughly in the order they were inserted. We say &quot;roughly&quot;, because &quot;insert-order&quot; and &quot;commit-order&quot; are different things.</p>
<p>While auto-increment values are (generally) generated at insert-time, these values only become visible at commit-time. This means another process may observe these sequence numbers arriving in a different order. While Axon has mechanisms to ensure eventually all events are handled, even when they become visible in a different order, there are limitations and performance aspects to consider.</p>
<p>When a tracking processor reads events, it uses the &quot;global sequence&quot; to track its progress. When events become available in a different order than they were inserted, Axon will encounter a &quot;gap&quot;. Axon will remember these &quot;gaps&quot; to verify that data has become available since the last read. These gaps may be the result of events becoming visible in a different order, but also because a transaction was rolled back. It is highly recommended to ensure that no gaps exist because of over eagerly increasing the sequence number. The mechanism for checking gaps is convenient, but comes with a performance impact.</p>
<p>When using a <code>JpaEventStorageEngine</code>, Axon relies on the JPA implementation to create the table structure. While this will work, it is unlikely to provide the configuration that has the best performance for the database engine in use. That is because Axon uses default settings for the <code>@GeneratedValue</code> annotation.</p>
<p>To override these settings, create a file called <code>/META-INF/orm.xml</code> on the classpath, which looks as follows:</p>
<pre><code class="lang-markup">&lt;?xml version=&quot;1.0&quot; encoding=&quot;UTF-8&quot;?&gt;
&lt;entity-mappings version=&quot;1.0&quot; xmlns=&quot;http://java.sun.com/xml/ns/persistence/orm&quot;&gt;
    &lt;mapped-superclass access=&quot;FIELD&quot; metadata-complete=&quot;false&quot; class=&quot;org.axonframework.eventhandling.AbstractSequencedDomainEventEntry&quot;&gt;
        &lt;attributes&gt;
            &lt;id name=&quot;globalIndex&quot;&gt;
                &lt;generated-value strategy=&quot;SEQUENCE&quot; generator=&quot;myGenerator&quot;/&gt;
                &lt;sequence-generator name=&quot;myGenerator&quot; sequence-name=&quot;mySequence&quot;/&gt;
            &lt;/id&gt;
        &lt;/attributes&gt;
    &lt;/mapped-superclass&gt;
&lt;/entity-mappings&gt;
</code></pre>
<p>It is important to specify <code>metadata-complete=&quot;false&quot;</code>. This indicates this file should be used to override existing annotations, instead of replacing them. For the best results, ensure that the <code>DomainEventEntry</code> table uses its own sequence. This can be ensured by specifying a different sequence generator for that entity only.</p>

                                
                                </section>
                            
    </div>
    <div class="search-results">
        <div class="has-results">
            
            <h1 class="search-results-title"><span class='search-results-count'></span> results matching "<span class='search-query'></span>"</h1>
            <ul class="search-results-list"></ul>
            
        </div>
        <div class="no-results">
            
            <h1 class="search-results-title">No results matching "<span class='search-query'></span>"</h1>
            
        </div>
    </div>
</div>

                        </div>
                    </div>
                
            </div>

            
                
                <a href="../extensions/tracing.html" class="navigation navigation-prev " aria-label="Previous page: Tracing">
                    <i class="fa fa-angle-left"></i>
                </a>
                
                
                <a href="message-handler-tuning/" class="navigation navigation-next " aria-label="Next page: B. Message Handler Tuning">
                    <i class="fa fa-angle-right"></i>
                </a>
                
            
        
    </div>

    <script>
        var gitbook = gitbook || [];
        gitbook.push(function() {
            gitbook.page.hasChanged({"page":{"title":"A. RDBMS Tuning","level":"6.1","depth":1,"next":{"title":"B. Message Handler Tuning","level":"6.2","depth":1,"path":"appendices/message-handler-tuning/README.md","ref":"appendices/message-handler-tuning/README.md","articles":[{"title":"Parameter Resolvers","level":"6.2.1","depth":2,"path":"appendices/message-handler-tuning/parameter-resolvers.md","ref":"appendices/message-handler-tuning/parameter-resolvers.md","articles":[]},{"title":"Handler Enhancers","level":"6.2.2","depth":2,"path":"appendices/message-handler-tuning/handler-enhancers.md","ref":"appendices/message-handler-tuning/handler-enhancers.md","articles":[]}]},"previous":{"title":"Tracing","level":"5.8","depth":1,"path":"extensions/tracing.md","ref":"extensions/tracing.md","articles":[]},"dir":"ltr"},"config":{"gitbook":"*","theme":"default","variables":{},"plugins":[],"pluginsConfig":{"highlight":{},"search":{},"lunr":{"maxIndexSize":1000000,"ignoreSpecialCharacters":false},"sharing":{"facebook":true,"twitter":true,"google":false,"weibo":false,"instapaper":false,"vk":false,"all":["facebook","google","twitter","weibo","instapaper"]},"fontsettings":{"theme":"white","family":"sans","size":2},"theme-default":{"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"},"showLevel":false}},"structure":{"langs":"LANGS.md","readme":"README.md","glossary":"GLOSSARY.md","summary":"SUMMARY.md"},"pdf":{"pageNumbers":true,"fontSize":12,"fontFamily":"Arial","paperSize":"a4","chapterMark":"pagebreak","pageBreaksBefore":"/","margin":{"right":62,"left":62,"top":56,"bottom":56}},"styles":{"website":"styles/website.css","pdf":"styles/pdf.css","epub":"styles/epub.css","mobi":"styles/mobi.css","ebook":"styles/ebook.css","print":"styles/print.css"}},"file":{"path":"appendices/rdbms-tuning.md","mtime":"2021-09-07T13:08:08.000Z","type":"markdown"},"gitbook":{"version":"3.2.3","time":"2021-09-13T08:33:36.904Z"},"basePath":"..","book":{"language":""}});
        });
    </script>
</div>

        
    <script src="../gitbook/gitbook.js"></script>
    <script src="../gitbook/theme.js"></script>
    
        
        <script src="../gitbook/gitbook-plugin-search/search-engine.js"></script>
        
    
        
        <script src="../gitbook/gitbook-plugin-search/search.js"></script>
        
    
        
        <script src="../gitbook/gitbook-plugin-lunr/lunr.min.js"></script>
        
    
        
        <script src="../gitbook/gitbook-plugin-lunr/search-lunr.js"></script>
        
    
        
        <script src="../gitbook/gitbook-plugin-sharing/buttons.js"></script>
        
    
        
        <script src="../gitbook/gitbook-plugin-fontsettings/fontsettings.js"></script>
        
    

    </body>
</html>

